Electronic device system utilizing a character input method

ABSTRACT

A character input method is implemented in a device with a plurality of keys. If a key is activated by a first operation matching a first input pattern, a first route is selected to traverse a plurality of characters corresponded by the key during presentation of the plurality of characters. If the first key is activated by a second operation matching a second input pattern, the plurality of characters corresponded by the first key are orderly retrieved and presented according to a second route in response to operations on the first key. The order for presenting two characters corresponded by the first key in the first route is reversed in the second route.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a divisional of U.S. application Ser. No.12/432,734, entitled “ELECTRONIC DEVICE SYSTEM UTILIZING A CHARACTERINPUT METHOD”, filed on Apr. 29, 2009, published as US20090273566A1,which is based upon and claims the benefit of priority from TaiwanPatent Application No. 097116277, filed May 2, 2008. The entirety ofeach of the above-mentioned patent applications is hereby incorporatedby reference herein in its entirety.

BACKGROUND

1. Technical Field

The present invention relates to computer techniques, and moreparticularly to electronic device systems utilizing modified characterinput methods.

2. Description of Related Art

A cell phone is not very convenient for text input since it is typicallyequipped with a numeric keypad rather than an alphanumeric keyboard. Forexample, because 26 letters are mapped to 8 numeric keys means that onenumeric key would have to represent three to four letters.

In an existing input method, one keystroke on a key representing “A”,“B”, and “C” can be recognized as to present a character candidate “A”,two keystrokes to present “B”, and three keystroke to present “C”.Inputting character “C” is always more complex and difficult than “A”and liable to lead to mistakes. For example, inputting “C” requiresrepeatedly and rapidly pressing a specific key three times, during which“A”, “B”, and “C” are orderly presented. An additional key press causesthe desired “C” to be missed and leads to reiteration of “A”, “B”, and“C”, which is very troublesome and time consuming.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an embodiment of an electronic device;

FIG. 2 is a schematic diagram of an exemplary embodiment of a keyboard;

FIG. 3A is flowchart showing one embodiment of an abc input method;

FIG. 3B is flowchart showing an exemplary embodiment of a characterinput method;

FIG. 3C is flowchart showing another embodiment of a character inputmethod;

FIG. 3D is flowchart showing another embodiment of a character inputmethod;

FIG. 4 shows a schematic diagram of a default direction and a reverseddirection for presenting character candidates;

FIGS. 5A-5F are schematic diagrams showing character candidates and acursor in a text area;

FIG. 6 is a schematic diagram showing operation signals with referenceto a time line;

FIG. 7 is flowchart showing another embodiment of a character inputmethod which utilizes a menu to display characters;

FIG. 8A is a schematic diagram showing a menu corresponding to a defaultsequence of character candidates “wxyz”;

FIG. 8B is a schematic diagram of a text area in which a character “x”in the default sequence “wxyz” is displayed;

FIG. 8C is a schematic diagram of a text area into which a character “y”is entered;

FIG. 8D is a schematic diagram showing another embodiment of a menu inwhich character candidates are represented by assistant keys;

FIG. 9 is a schematic diagram of another embodiment of a keyboard;

FIG. 10 is a block diagram of an embodiment of an electronic devicesystem in which an electronic device with a input device and anelectronic device with a display transfer text to each other through acommunication channel;

FIG. 11 is a block diagram of another embodiment of the electronicdevice system in which an electronic device with a display receivescontrol signals for text input through a communication channel from anexternal source; and

FIG. 12 is a block diagram of another embodiment of the electronicdevice system in which three electronic devices transfer control signalsfor text input and text presentation through a communication channel.

DETAILED DESCRIPTION

Description of exemplary embodiments of a character input method and anelectronic device utilizing the same is given in the followingparagraphs which are organized as:

1. System Overview

2. Exemplary Embodiments of Character Input Methods

2.1 First Exemplary Embodiment of Character Input Method

2.2 Second Exemplary Embodiment of Character Input Method

2.3 Third Exemplary Embodiment of Character Input Method

3. Variation of Embodiments

3.1 Alternative Embodiments of Character Input Method

3.2 Alternative Embodiments of the Electronic Device

4. Conclusion

1. SYSTEM OVERVIEW

The character input method can be implemented in various electronicdevices, such as cell phones, personal digital assistants (PDAs),set-top boxes (STB), televisions, or media players. An example of anelectronic device implementing the character input method is given inthe following.

With reference to FIG. 1, an electronic device 100 comprises a processor10, a main memory 20, a display 30, an input unit 40, and timers 50 and60. The processor 10 may comprise various integrated circuits (ICs) forprocessing data and machine-readable instructions. The processor 10 maybe packaged as a chip or comprise a plurality of interconnected chips.For example, the processor 10 may only comprise a central processingunit (CPU) or a combination of a CPU, a digital signal processor (DSP),and a chip of a communication controller, such as communication units inFIG. 10-12. The communication controller coordinates communication amongcomponents of the electronic device 100 or communication between theelectronic device 100 and external devices. Examples of suchcommunication controller, such as communication units in FIG. 10-12, aredetailed in the paragraphs of alternative embodiments. The main memory20 may comprise a random access memory (RAM), a nonvolatile memory, amass storage device (such as a hard disk drive), or a combinationthereof. The nonvolatile memory may comprise electrically erasableprogrammable read-only memory (EEPROM) and flash memory. The display 30is configured for displaying text and image, and may comprise e-paper, adisplay made up of organic light emitting diode (OLED), or a liquidcrystal display (LCD). The display 30 may display various graphical userinterfaces including text area. The display 30 may comprise a singledisplay or a plurality of displays in different sizes.

The input unit 40 may comprise various input devices to input data orsignals to the electronic device 100, such as a touch panel, a touchscreen, a keyboard, or a microphone. The timers 50 and 60 keepingpredetermined time intervals may comprise circuits, machine-readableprograms, or a combination thereof. Each of the timers 50 and 60generates signals to notify expiration of the predetermined timeintervals. Components of the device 100 can be connected throughwire-lined or wireless communication channels.

A keyboard in FIG. 2 is an exemplary embodiment of the input unit 40.The keyboard may be made of mechanical structures or comprise a virtualkeyboard shown on the display 30. The keyboard comprises keys 201-217.Keys 213 and 214 are function keys for triggering functions based onsoftware programs executed by the electronic device 100. A key 215 is anoff-hook key, and a key 216 is an on-hook key. A key 217 is configuredfor directing direction and movement of a cursor on the display 30.Digits, letters, and/or symbols corresponding to the keys 201-212 areshown on respective keys in FIG. 2, but are not intended to be limitedthereto. Digits, characters, and/or symbols corresponding to andrepresented by a key may be referred to as candidates of the key. Forexample, the key 201 corresponds to digit “1,” the key 202 correspondsto digit “2” and characters “a”, “b”, and “c”, and the key 203corresponds to digit “3” and characters “d”, “e”, and “f”. The key 210corresponds to digit “0” and a space character; the key 212 correspondsto symbol “#” and a function for switching input methods. Differentinput methods differ in the ways of candidate character selection. Asone of different input methods can be selectively activated, each keymay accordingly correspond to different sets of characters. For example,the key 212 of the electronic device 100 may activate so called abcinput method or T9® text input method developed by Tegic Communications,Inc. The electronic device 100 may be installed with a plurality ofcharacter input methods that are user-selectable.

2. EXEMPLARY EMBODIMENTS OF CHARACTER INPUT METHODS

FIG. 3A shows a flowchart of one embodiment of the abc input method.First, the processor 10 initializes the abc input method (step S30) anddetermines if any key is activated (step S31). If at least a key isactivated, the processor 10 initiates a timer to keep an operationperiod of the activated key (step S32), and displays a first charactercandidate for the activated key (step S33). For example, if the key 208is activated at the step S31, the processor 10 displays the firstcharacter candidate “t” for the activated key 208 at the step S33. Inthe step S34, the processor 10 continues to detect any short press onthe same activated key (event A), expiration of the operation period(event B), any operation of another key (event C), or any long press onthe same activated key (event D).

Upon receiving a short press on the same activated key (event A), theprocessor 10 resets the timer to renew counting of the operation period(step S35), and displays a next character candidate of the activated key(step S36). For example, if the key 208 is activated by a short pressoperation at the step S34, the processor 10 displays a next charactercandidate “u” for the activated key 208 at the step S36. Timer resettingcan extend the operation period.

If the operation period expires (event B), the processor 10 enters acurrently displayed character candidate to a text area of the display 30of the electronic device 100 (step S39). Focusing may be applied to thecurrently displayed character candidate of the activated key currentlydisplayed on the text area as a result of character candidate traversal.In one embodiment, the focusing may include enlargement of the currentlydisplayed character, and/or displaying the currently displayed characterin a bold or italic font, for example.

Upon receiving an operation of another key, referred to as a key j,where j is a integer variable (event C), the processor 10 enters thecurrently displayed character candidate in a text area of the electronicdevice 100 (step S40), returns to the step S32 to initiate an operationperiod of the key j, and returns to the step S33 to display a firstcharacter candidate of the key j. The processor 10 accordingly performssteps S34-S40 following the step S33 for the key j.

Upon receiving a long press operation on the same activated key (eventD), the processor resets the timer (step S37) and displays a digitcorresponding to the activated key (step S38). For example, if a longpress operation is performed on the key 208 at the step S34, theprocessor 10 displays a digit “8” for the activated key 208 at the stepS38.

The electronic device 100 may be installed a plurality of characterinput methods and selects one of the input methods to execute. Anexemplary embodiment of character input method executable by theelectronic device 100 is shown in FIG. 3B. The embodiment of characterinput method activates different sequences of character candidates inresponse to different input operations on the same key without requiringswitching between input methods.

2.1 First Exemplary Embodiment of Character Input Method

With reference to FIG. 3B, the processor 10 initiates a character inputmethod (step S300) and determines if any operation is performed on a keyof the input unit 40 (step S301). If an operation is performed on a key,the processor 10 initiates the timer 50 to keep a time interval forcomparison with duration of the operation on the key (step S302), anddetermines if the operation conforms to a first input pattern or asecond input pattern (step S304). The first and second input patternsmay vary by electronic device design. For example, the processor 10 mayidentify different input operations by identifying a time interval tcounted by the timer 50. For example, the processor determines that eachkey operation with a duration thereof less than the time interval tconforms to the first input pattern, referred to as a short press, andeach key operation with a duration thereof greater than the timeinterval t conforms to the second input pattern, referred to as a longpress. Duration of a key operation is counted from a depression of a keyto releasing of the key. In other words, the processor determines that akey operation terminating before expiration of the timer 50 conforms tothe first input pattern, and a key operation terminating afterexpiration of the timer 50 conforms to the second input pattern. Thetime interval t or duration of key operations may be measured in clockcycles or seconds. The time interval t may be defined as 0.5 seconds,0.8 seconds, or 1 second, for example.

The key activated at step S300 is referred to as a key i, where i is apositive integer. In the example of FIG. 2, the range of i is 201≦i≦212.If the performed operation conforms to the first input pattern, theprocessor 10 activates a default sequence of character candidates forthe key i arranged in original order of the character candidates (stepS305). That is, the processor 10 utilized the default sequence of thecharacter candidates for the key i as a preset route for traversing thecharacter candidates in presentation of the candidates, and displays oneof the character candidates according to the preset route in response toeach operation on the key j. With reference to FIGS. 2 and 4, the key202 corresponds to digit “2” and characters “a”, “b”, and “c”, adirected line 401 represents a route of traversing the charactercandidates of the key 202 in an original order, and a default sequenceof the character candidates of the key 202 is “abc”. The processor 10may display one of the character candidates “a”, “b”, and “c” accordingto the route represented by line 401 in response to each operation onthe key 202. The character candidate next to the “c” is “a”, and thedefault sequence is iterated in presentation of the charactercandidates.

If the performed operation conforms to the second input pattern, theprocessor 10 activates a reversed sequence of character candidates forthe key i arranged in a reversed order of the character candidates (stepS325). That is, the processor 10 utilizes the reversed sequence of thecharacter candidates for the key i as a preset route for traversing thecharacter candidates in presentation of the candidates, and displays oneof the character candidates according to the preset route in response toeach operation on the key j. With reference to FIG. 4, a directed line402 represents a route of traversing the character candidates of the key202 in a reversed order, and a reversed sequence of the charactercandidates of the key 202 is “cba”. The processor 10 displays one of thecharacter candidates “c”, “b”, and “a” according to the routerepresented by line 402 in response to each operation on the key 202.The character candidate next to the “a” is “c”, and the reversedsequence is iterated in presentation of the character candidates.

Similarly, the default and reversed sequences of the key 203 arerespectively “def” and “fed”; the default and reversed sequences of thekey 204 are respectively “ghi” and “ihg”; . . . and the default andreversed sequences of the key 209 are respectively “wxyz” and “zyxw”. Ifthe default sequence of the key 202 is “abc2” in which a digit “2”follows letter “c”, the reversed sequence of the key 202 be obtained as“2cba” by reversing the default sequence, or defined by users as “cba”according to user configuration identified by the processor 10.Character candidates of each key may be stored in an appropriate datastructure, such as a linked list or an array, for implementing thedefault and reversed character traversal and presentation. The addressesof the first and last characters may be stored in registers or the mainmemory 20 of the electronic device 100.

After activating the default sequence of character candidates, theprocessor 10 displays the first character candidate in the defaultsequence (step S306). For example, if the key i comprises the key 209,the processor 10 displays the first character “w” in the defaultsequence “wxyz” corresponding to the key 209. FIG. 5A shows a charactercandidate “w” indicated by a cursor 501 in a text area 500. Theprocessor 10 initiates the timer 60 to count an operation period of thekey i (step S309) and detects occurrence of any subsequent operation onthe same key i (event A), expiration of the timer 60 (event B), or anyoperation on another key (event C) (step S310). Said another keyreceiving an operation in the step S310 is referred to as a key j, wherej is a positive integer, 201≦j≦212, and where and j≠i.

In the step S310, upon receiving a subsequent operation on the same keyi (event A), the processor 10 resets the timer 60 (step S312) anddisplays a next character candidate in the default sequence insubstitution for the currently displayed character (step S314). Forexample, in a case that the key i comprises the key 209, the processor10 displays a next character candidate “x” in the default sequence“wxyz” as shown in FIG. 5B. The step S310 is repeated. Similarly, uponreceiving another subsequent operation on the same key 209, theprocessor 10 resets the timer 60 and displays a next character candidate“y” in the default sequence “wxyz”. The character candidate next to “z”in the default sequence is “w”.

In the step S310, if the timer 60 expires (event B), the processor 10enters a currently displayed character candidate of the key i to a textarea, and moves the cursor to a next position in the text area (stepS316). The step S301 is repeated. For example, if “x” is the currentlydisplayed character candidate when the timer 60 expires, as shown inFIG. 5C, the processor 10 enters “x” to the text area 500 and moves thecursor 501 to a next position in the text area 500.

In the step S310, upon receiving an operation on another key j (eventC), the processor 10 enters a currently displayed character candidate ofthe key i to the text area, moves the cursor to a next position in thetext area (step S318), and resets the timer 60 for the key j (stepS302). The processor 10 repeats steps S305-S310, S312, S314, S316, S318,S325-S328, S332, S334, S336, and S338 following the step S302, thus topresent character candidates in a default or reversed sequence for thekey j in response to operations on the key k.

Description is now returned to a reversed sequence. In the step S325, ifduration of the performed operation on the key i exceeds time intervalt, the performed operation conforms to the second input pattern, and theprocessor 10 activates a reversed sequence of character candidates forthe key i (step S325) and displays the first character candidate in thereversed sequence (step S326). For example, in a case that the key icomprises the key 209, the processor 10 displays the first charactercandidate “z” in the reversed sequence “zyxw”, as shown in FIG. 5D, inwhich “z” is indicated by the cursor 501. When the performed operationon the key i is terminated (step S327), the processor 10 initiates thetimer 60 to count an operation period of the key i (step S328). Theprocessor 10 detects occurrence of any subsequent operation on the samekey i (event A), expiration of the timer 60 (event B), or any operationon another key (event C) (step S330). Said another key receives anoperation in the step S330, is referred to as a key j.

In the step S330, upon receiving a subsequent operation on the same keyi (event A), the processor 10 resets the timer 60 (step S332) anddisplays a next character candidate in the reversed sequence insubstitution for the currently displayed character (step S334). Forexample, in a case that the key i comprises the key 209, the processor10 displays a next character candidate “y” in the reversed sequence“zyxw” as shown in FIG. 5E. The step S330 is repeated. Similarly, uponreceiving another subsequent operation on the same key 209, theprocessor 10 resets the timer 60 and displays a next character candidate“x” in the reversed sequence “zyxw”. The character candidate next to “w”in the reversed sequence is “z”.

In the step S330, if the timer 60 expires (event B), the processor 10enters a currently displayed character candidate of the key i to a textarea, and moves the cursor to a next position in the text area (stepS336). The step S301 is repeated. For example, if “y” is the currentlydisplayed character candidate when the timer 60 expires, as shown inFIG. 5F, the processor 10 enters “y” to the text area 500 and moves thecursor 501 to a next position in the text area 500.

In the step S330, upon receiving an operation on another key j (eventC), the processor 10 enters a currently displayed character candidate ofthe key i to the text area, moves the cursor to a next position in thetext area (step S338), and resets the timer 60 for the key j (stepS302). The processor 10 repeats steps S305-S310, S312, S314, S316, S318,S325-S328, S332, S334, S336, and S338 following the step S302 for thekey j.

Note that the arrangement of steps in the input method may be changed inalternative embodiments of the input method. For example, the step S309can be performed before the step S305 or S306. Before an operationperiod of a key expires, a long press on the key can change the routefor traversing character candidates during the operation period. Anotherexemplary embodiment of the input method is given with reference to FIG.3C.

2.2 Second Exemplary Embodiment of Character Input Method

With reference to FIG. 3C, the difference between FIG. 3C and FIG. 3Brelies on steps S310 a and S330 a. In the step S310 a, the processor 10detects occurrence of any subsequent short press on the same key i(event A), expiration of operation period of the key i (event B), or anyoperation on another key j (event C), or any long press on the key i(event D). Upon receiving a short press on the same key i (event A), theprocessor 10 executes the steps S312 and S314. Upon receiving a longpress on the same key i (event D), the processor 10 executes the stepsS332 and S334. Specifically, in the step S334, the processor 10 selectsthe reversed sequence as the preset route and displays a charactercandidate in the reversed sequence next to the currently displayedcharacter candidate, thus to present one character candidate in thereversed sequence of the key i in response to each operation of the keyi before the operation period of the key i expires. For example, in acase that the default sequence of the key 209 is initially activated asthe preset route, in response to a long press in the step S310 a whencharacter “y” is currently displayed, the processor 1 displays charactercandidate “x” of the key 209 in step S334, which is the charactercandidate next to “y” in the reversed sequence of the key 209, or thecharacter candidate previous to “y” in the default sequence of the key209.

In the step S330 a, the processor 10 detects occurrence of anysubsequent short press on the same key i (event A), expiration ofoperation period of the key i (event B), or any operation on another keyj (event C), or any long press on the key i (event D). Upon receiving ashort press on the same key i (event A), the processor 10 executes thesteps S332 and S334. Upon receiving a long press on the same key i(event D), the processor 10 executes the steps S312 and S314.Specifically, in the step S314, the processor 10 selects the defaultsequence as the preset route and displays a character candidate in thedefault sequence next to the currently displayed character candidate,thus to present one character candidate in the default sequence of thekey i in response to each operation of the key i before the operationperiod of the key i expires. For example, in a case that the reversedsequence of the key 209 is initially activated as the preset route, inresponse to a long press in the step S330 a when character “y” iscurrently displayed, the processor 1 displays character candidate “z” ofthe key 209 in step S314, which is the character candidate next to “y”in the default sequence of the key 209, or the character candidateprevious to “y” in the reversed sequence of the key 209.

The exemplary embodiment of the character input method shown in FIG. 3Ccan repeatedly change the preset route for traversing charactercandidates of the key i in response to long presses on the key i beforeexpiration of operation period of the key i. Thus, long press operationswithin an operation period of a key provide the function of returning toa character candidate previous to a currently displayed charactercandidate in character presentation. It may be understood that a longpress operation within an operation period of a key may return thecharacter presentation to a character candidate previous to a currentlydisplayed character candidate without changing settings of the presetroute. Additionally, alternative exemplary embodiments of input methodsmay utilize other schemes to realize presentation of charactercandidates in a reversed direction.

2.3 Third Exemplary Embodiment of Character Input Method

With reference to FIG. 3D, difference between FIG. 3D and FIG. 3B isdetailed in the following.

In the step S325, if the press operation on the key i continues afterthe reversed sequence is activated as the preset route, the processor 10displays the first character candidate in the reversed sequence (stepS326), and begins to count an operation period t0 (step S329). The timer50 or another timer may count the operation period t0. The processor 10detects expiration of the operation period t0 (event E) or terminationof the press operation (event F) (step S333). If the press operation onthe key i continues after the operation period t0 expires (event E), theprocessor 10 displays a next character candidate in the reversedsequence of the key i (step S334). Subsequently, the processor 10restarts the counting of operation period t0 (step S329) and repeats thestep S333. If the press operation terminates (event F), the processor 10executes the step S309. In the step S316 when the timer 60 expires, theprocessor 10 enters a currently displayed character candidate.

In the step S310 a, the processor 10 detects occurrence of anysubsequent short press on the same key i (event A), expiration ofoperation period of the key i (event B), any operation on another key j(event C), or any long press on the key i (event D). Upon receiving ashort press on the same key i (event A), the processor 10 executes thesteps S312 and S314. Upon receiving a long press on the same key i(event D), the processor 10 executes the step S334. Specifically, in thestep S334, the processor 10 displays a character candidate in thereversed sequence next to the currently displayed character candidate,and may repeat the steps S329, S333, and S334, thus to subsequentlypresent character candidates in the reversed sequence of the key i inresponse to the long press operation of the key j.

For example, the default and reversed sequences for the key 209 arerespectively “wxyz” and “zyxw”. In the traditional abc input method,entering “z” in an electronic device requires four press operations onthe key 209, and entering “y” to an electronic device requires threepress operations on the key 209. The first or second embodiment of thepresent character input method requires only one press operation on thekey 209 to enter “z” to the electronic device 100, and two pressoperations on the key 209 to enter “y”. Thus, the exemplary embodimentsof the character input method substantially reduce the number ofoperations and time required to input a character, and reduce thepossibility of missing desired a character during character candidatepresentation.

3. VARIATION OF EMBODIMENTS

As appreciated, the time interval t is utilized to identify the firstand second input patterns. More time intervals may be utilized toidentify more input patterns. For example, a press operation on a keywith duration less than a time interval t1 is identified as conformingto a first input pattern; a press operation on a key with a durationgreater than the time interval t1 but less than a time interval t2 isidentified as conforming to a second input pattern; and a pressoperation on a key with duration greater than the time interval t2 isidentified as conforming to a third input pattern.

FIG. 6 shows a time line and signals generated from the key i duringoperation of the key. A high level in each signal waveform in FIG. 6reflects a pressed state of the key i while a low level reflects areleased state of the key i. Operation on the key i may generatedifferent signal waveforms, not limited to FIG. 6. The signal of a firstoperation shows that the key is pressed at time T0 and released at timeT1. If (T1−T0)<t1, the processor 10 determines that the first operationconforms to the first input pattern. If t1≦(T2−T0)<t2, the processor 10determines that the second operation conforms to the second inputpattern. If t2≦(T3−T0), the processor 10 determines that the thirdoperation conforms to the third input pattern. The processor 10 mayactivate the reversed sequence for the key i in response to an operationconforming to the second input pattern and display a digit correspondingto the key i in response to an operation conforming to the third inputpattern.

3.1 Alternative Embodiments of Character Input Method

The processor 10 may display character candidates in a menu on thedisplay 30 to assist character input. Keys in the input unit 40 areclassified as text keys and assistant keys. For example, the keys201-212 are classified as text keys, and keys 213-217 are classified asassistant keys. The key 217 is a direction key and configured fortriggering movement of a cursor to the upward, right, downward, and leftwhen activated by a press at positions 218 a, 219 a, 220 a, and 221 a,respectively. The key 217 may be replaced by a five direction controlmeans in another embodiment. Description of an alternative embodiment ofan input method is given with reference to a keyboard in FIG. 9.

With reference to FIG. 7, the processor 10 initiates a character inputmethod (step S700) and determines if a text key (referred to as the keyi) in the input unit 40 is activated by an operation (step S701). Upondetecting that an operation activates a text key i, the processor 10initiates the timer 50 to count an operation period of the key i (stepS702) and activate one of the default and reversed sequence of the key ias the preset route based on whether the operation conforms to the firstinput pattern or the second input pattern (step S705). After the one ofthe default and reversed sequence is activated, the processor 10displays a menu on the display 30 and the first character candidate inthe activated sequence (step S706) and initiates the timer 60 to countan operation period of the key i (step S709).

In an example that the key i is the key 209, a menu 800 corresponding toan activated default sequence of the key 209 is shown in 8A. Charactercandidates are arranged clockwise in the menu 800. Character candidatesof a key, however, are not limited to FIG. 8A, and can be arrangedcounterclockwise or in any other arrangement. When the first charactercandidate “w” of the key 209 is shown in the text area 500, a cursor 801indicates that “w” is a currently displayed character in the menu 800.The assistant keys 218, 219, 220, and 221 respectively correspond tocharacter candidates “w”, “x”, “y”, and “z”.

The processor 10 detects occurrence of any subsequent short press on thesame key i (event A), expiration of operation period of the key isignified by the timer 60 (event B), or any operation on another textkey j (event C), or any long press on the key (event D), or anyoperation on an assistant key k (event G), where k is an positiveinteger. In the example of FIG. 9, the range of k is 213≦k≦221.

In the step S710, upon receiving a short press on the same key i (eventA), the processor 10 resets the timer 60 (step S712) and displays a nextcharacter candidate in the sequence (step S714). For example, in a casethat the key i comprises the key 209, following FIG. 8A, the processor10 displays a next character candidate “x” in the default sequence“wxyz” as shown in FIG. 8B. The cursor 801 in the menu 800 also movesclockwise to the position of “x” to indicate the currently displayedcharacter. The step S710 is repeated. Similarly, upon receiving a shortpress on the same key 209 (event A), the processor 10 resets the timer60, and displays a next character candidate “y” in the default sequence“wxyz”. The cursor 801 in the menu 800 also moves clockwise to theposition of “y” to indicate the currently displayed character.

In the step S710, if the timer 60 expires (event B), the processor 10enters a currently displayed character candidate of the key i to a textarea, and moves the cursor to a next position in the text area (stepS716). The step S701 is repeated. For example, if “y” is the currentlydisplayed character candidate when the timer 60 expires, as shown inFIG. 8C, the processor 10 enters “y” to the text area 500, moves thecursor 501 to a next position in the text area 500, and terminatespresentation of the menu 800.

In the step S710, upon receiving an operation on another text key j(event C), the processor 10 enters a currently displayed charactercandidate of the key i to the text area, moves the cursor to a nextposition in the text area (step S718), and resets the timer 50 for thekey j (step S702). The processor 10 repeats steps S705, S706, S709,S710, S712, S714, S716, S718, S720, and S722 following the step S702 forthe key j.

In the step S710, upon receiving a long press on the same key i (eventD), the processor 10 activate a sequence reverse to the activatedsequence before the step S720. For example, if the reversed sequence ofthe key i is utilized as the preset route in the step S710, theprocessor 10 activates the default sequence of the key i as the presetroute. On the other hand, if the default sequence of the key i isutilized as the preset route in the step S710, the processor 10activates the reversed sequence of the key i as the preset route.Subsequently, in the step S714, the processor 10 displays a nextcharacter candidate in the activated sequence. In the example of FIG. 8Awhen the default sequence of the key 209 is activated as the presetroute, upon receiving a long press on the same key 209 (event D), theprocessor 10 displays a character “z” previous to “w” in the defaultsequence “wxyz”, i.e. the character candidate next to “w” in thereversed sequence, and moves the cursor 801 clockwise to the position of“z” to indicate the currently displayed character. The step S710 isrepeated. Similarly, upon receiving a subsequent long press on the samekey 209 (event D), the processor 10 resets the timer 60, displays acharacter “y” next to “z” in the reversed sequence, and moves the cursor801 clockwise to the position of “y” to indicate the currently displayedcharacter. FIGS. 3C and 3D shows that a long press can change the presetroute of character candidates. Route for traversing charactercandidates, however, can be controlled by various input devices, such asa dialer, a wheel, a rotatable knob, or a touch panel. The processor 10may perform clockwise or counterclockwise movement of the cursor 801 andthe currently displayed character in response to clockwise orcounterclockwise tracks detected by the touch panel. The display 30 canbe equipped with a touch panel to form a touch screen. The keyboard inFIG. 9 can be a virtual keyboard displayed on the display 30.

In the step S710, upon receiving an operation on an assistant key k(event G), the processor 10 enter a character candidate corresponding tothe key k to a text area, moves a cursor to a next position in the textarea (step S722), and repeats steps S701, S702, S705, S706, S709, S710,S712, S714, S716, S718, S720, and S722 following the step S700.Following the example of FIG. 8A, in FIG. 8C, the processor 10 enterscharacter “y” to the text area 500 in response to an operation on thekey 220 disregarding the currently displayed. In the example of FIG. 8A,entering of character “y” to a text area requires two operations nomatter in the default sequence or reversed sequence before expiration ofthe timer 60. With the aid of assistant keys, only one operation isrequired to enter the character “y” to a text area. Similarly, theprocessor enters character “w”, “x”, or “z” to the text area 500 inresponse to an operation on the key 218, 219, or 221. Charactercandidates of the key 209 can be input to electronic device 100 throughthe five schemes corresponding to events A, B, C, D, and G duringexecution of one input method with no confliction exist between theseschemes.

The menu 800 can include more candidates for a key, such as uppercaseand lowercase letters, and auto-completed words. In addition to thedirection key 217, voice commands or other keys can be utilized torepresent character candidates in the menu 800. As shown in FIG. 8D,when the key 202 receives an operation, assistant keys 213, 214, 215,216, 218, 219, 220, and 221 respectively represent “A”, “tea”, “B”, “C”,“a”, “2”, “c”, and “b”. The “tea” is an auto-completed word, which isdetermined by the processor 10 from input characters in front of thecursor 501 in the text area 500 and character candidates in the menu800. For example, characters in front of the cursor 501 comprise “t” and“d”. Character candidates of the key 208 associated with the character“t” are “t”, “u”, and “v”. Character candidates of the key 203associated with the character “d” are “d”, “e”, and “f”. The processor10 selects the first letter in the auto-completed word from “t”, “u”, or“v”, the second letter in the auto-completed word from “d”, “e”, and“f”, and the last letter in the auto-completed word from the menu 800.The processor 10 may select an auto-completed word according to thosewords, which are most frequently input by users of the electronic device100, or based on a dictionary database in the electronic device 100. Theauto-completed word in the menu 800 may be generated according to T9®input method.

3.2 Alternative Embodiments of the Electronic Device

The exemplary embodiments of the character input method can be executedin various systems, such as electronic device systems shown in FIG.10-12.

In FIG. 10, a processor 11 of an electronic device 101 executes thecharacter candidates input method, and a communication unit 17 transmitstext to a communication unit 27 through communication channel 104. Aprocessor 21 displays the text received by the communication unit 27 ona display 32 and enters the text into a text area of an electronicdevice 102. The communication channel 14 in FIG. 10 may transfer textmessage and control signals between the electronic devices 101 and 102.

In FIG. 11, a communication unit 17 of an electronic device 201transmits input signals generated by an input unit 41 to communicationunit 27 through communication channel 204. A processor 21 in theelectronic device 202 displays character candidates on a display 32 andenters the character candidates to a text area under the direction ofthe character input method based on input signals received by thecommunication unit 27. The electronic device 202 may display the text onan external display.

In FIG. 12, a communication unit 17 of an electronic device 301transmits input signals generated by an input unit 41 to communicationunit 27 through communication channel 304. A processor 21 in theelectronic device 202 performs the character input method based on inputsignals received by the communication unit 27 and transmits generatedcharacters to a communication unit 28. The communication unit 28transmits the characters to a communication unit 37 through acommunication channel 305. An electronic device 303 characters the textreceived by the communication unit 37 on a display 33.

The communication channels 104, 204, 304, and 305 may be wire-lined orwireless channels. Each of the electronic devices 101, 201, and 301 maybe a remote control or portable device, such as a PDA, an ultra mobiledevice (UMD), a laptop computer, or a cell phone. Each of the electronicdevices 102, 202, and 303 may comprise a television or a media player,such as a disc player. The electronic device 302 may comprise a set-topbox. The main memory 2 and 22 in FIGS. 10-12 may store computer-readableprogram for implementing the character input method.

4. CONCLUSION

The described embodiments of the character input method can be utilizedto input characters of various languages, such as Hiragana and Katakanaof Japanese, or phonetic symbols of Chinese. Other means such ashighlighted color or size, rather than a cursor as described, can beutilized to indicate a currently display character candidate.

In conclusion, the character input method activates default or reversedsequence of character candidates in response to different operations onthe same key and utilizes a menu to assist character input. Thecharacter input method reduces the number of operations and timerequired for character input, and thus eliminates the possibility ofmis-operation. The character input method is adoptable with and notconflicting with the traditional abc input method. Execution of thecharacter input method does not restrict device user to learn new inputschemes but provides to device user options of character input with lesskeystrokes.

It is to be understood, however, that even though numerouscharacteristics and advantages of the present invention have been setforth in the foregoing description, together with details of thestructure and function of the invention, the disclosure is illustrativeonly, and changes may be made in detail, especially in matters of shape,size, and arrangement of parts within the principles of the invention tothe full extent indicated by the broad general meaning of the terms inwhich the appended claims are expressed.

What is claimed is:
 1. An electronic device, comprising: a touchsensitive device operable to detect one or more touch operations basedon one or more keys of a virtual keyboard displayable by a displayfunction of the electronic device; and a processor electronicallyconnected to the touch sensitive device and operable to presentcharacter information through the display function, and operable todetect operation of the touch sensitive device according to a characterinput method, the character input method comprising: displaying thevirtual keyboard comprising a plurality of keys; utilizing the virtualkeyboard as a base for one or more touch operations detectable by atouch detection function, wherein each key of the plurality of keys isoperable as a toggle key, two different keys in the plurality of keysare respectively associated with different sequences of charactercandidates, and a sequence of character candidates comprises optionalcharacters arranged in a specific arrangement for character input to atext area; providing text input schemes associated with the virtualkeyboard, wherein a first text input scheme among the text input schemesis associated with a first mode of the keyboard, and a second text inputscheme among the text input schemes is associated with a second mode ofthe keyboard; allowing switching between the text input schemes toactivate one of the text input schemes as an active text input scheme;selecting one character in a first character set of optional charactersassociated with a first key among the plurality of keys as a currentlyselected character in response to an operation based on the first keyupon a condition that the first text input scheme is activated as theactive text input scheme, wherein the first character set is associatedwith the first key in the first mode of the virtual keyboard; selectingone character in a second character set of optional charactersassociated with the first key as the currently selected character inresponse to an operation based on the first key upon a condition thatthe second text input scheme is activated as the active text inputscheme, wherein the second character set is associated with the firstkey in the second mode of the virtual keyboard; displaying gestureoperable options of complementary characters selected from at least oneset of the first character set and second character set in response toan operation based on the first key upon a condition that one of thefirst text input scheme and the second text input scheme is activated asthe active text input scheme, wherein the complementary characters arecomplementary to a default character shown on the first key with respectto at least one set of the first character set and second character set,and each of the gesture operable options is operable to be activatedupon receiving a gesture; selecting a first one of complementarycharacters as the currently selected character upon a condition that oneof the gesture operable options associated with the first one ofcomplementary characters is activated by a gesture; and entering thecurrently selected character to the text area.
 2. The electronic deviceas claimed in claim 1, wherein the character input method furthercomprises: selecting a second one of complementary characters as thecurrently selected character upon receiving a voice command representingthe second one of complementary characters.
 3. The electronic device asclaimed in claim 1, wherein each of the gesture operable options isoperable to be activated upon receiving a press detectable by the touchsensitive device.
 4. The electronic device as claimed in claim 1,wherein each of the gesture operable options is operable to be activatedupon receiving a touch movement track detectable by the touch sensitivedevice, and a focus among the gesture operable options operable toindicate an activated option in the gesture operable options is moved inresponse to a direction of the touch movement track even if the touchmovement track is separated from the gesture operable options.
 5. Theelectronic device as claimed in claim 1, wherein the character inputmethod further comprises: determining an auto-completed word based onthe optional characters associated with the a first key in response toan operation based on the first key; and displaying a gesture operableoption of the auto-completed word among the gesture operable options. 6.A character input method executable by an electronic device connectableto a display and capable of detecting touch operations, comprising:displaying a virtual keyboard comprising a plurality of keys through adisplay function and utilizing the virtual keyboard as a base for one ormore touch operations detectable by a touch detection function, whereineach key of the plurality of keys is operable as a toggle key, twodifferent keys in the plurality of keys are respectively associated withdifferent groups of character candidates, a group of charactercandidates comprises optional characters arranged in a specificarrangement for character input to a text area, and the plurality ofkeys comprise a first key; utilizing the touch detection function torespond to one or more touch operations based on one or more keys of thevirtual keyboard; providing text input schemes associated with thevirtual keyboard, wherein a first text input scheme among the text inputschemes is associated with a first mode of the keyboard, and a secondtext input scheme among the text input schemes is associated with asecond mode of the keyboard; allowing switching between the text inputschemes to activate one of the text input schemes as an active textinput scheme; selecting one character in a first character set ofoptional characters associated with the first key as a currentlyselected character in response to an operation based on the first keyupon a condition that the first text input scheme is activated as theactive text input scheme, wherein the first character set is associatedwith the first key in the first mode of the virtual keyboard; selectingone character in a second character set of optional charactersassociated with the first key as the currently selected character inresponse to an operation based on the first key upon a condition thatthe second text input scheme is activated as the active text inputscheme, wherein the second character set is associated with the firstkey in the second mode of the virtual keyboard; displaying gestureoperable options of complementary characters selected from at least oneset of the first character set and second character set in response toan operation based on the first key upon a condition that one of thefirst text input scheme and the second text input scheme is activated asthe active text input scheme, wherein the complementary characters arecomplementary to a default character shown on the first key with respectto at least one set of the first character set and second character set,and each of the gesture operable options is operable to be activatedupon receiving a gesture; selecting a first one of complementarycharacters as the currently selected character upon a condition that oneof the gesture operable options associated with the first one ofcomplementary characters is activated by a gesture; and entering thecurrently selected character to the text area.
 7. A character inputmethod executable by an electronic device connectable to a display andcapable of detecting touch operations, comprising: displaying a virtualkeyboard comprising a plurality of keys through a display function;utilizing the virtual keyboard as a base for one or more touchoperations detectable by a touch detection function, wherein each key ofthe plurality of keys is operable as a toggle key, two different keys inthe plurality of keys are respectively associated with differentsequences of character candidates, a sequence of character candidatescomprises optional characters arranged in a specific arrangement forcharacter input to a text area, and the plurality of keys comprise afirst key; utilizing the display function to present a menu in a menuarea and a first character of a plurality of optional charactersassociated with the first key as a currently selected character in thetext area for an operation period of character presentation associatedwith the first key in response to a first operation based on the firstkey, wherein the menu comprises the plurality of optional charactersassociated with the first key, and a virtual input unit of a touchsensitive device other than the first key represents a second characterassociated with the first key in the menu; presenting a first subsequentcharacter as the currently selected character in the text area insubstitution for the first character according to a predetermined orderof the plurality of optional characters associated with the first key inresponse to another subsequent character operation based on the firstkey subsequent to the first operation upon a condition that thesubsequent character operation is detected by the electronic devicebefore expiration of the operation period, wherein the predeterminedorder represents a predetermined arrangement of the plurality ofoptional characters associated with the first key, and the firstsubsequent character comprises a character next to the first characterin the predetermined arrangement of the plurality of optional charactersassociated with the first key; entering the currently selected characterof the first key which is currently presented on the text area into thetext area upon expiration of the operation period of the first key; andentering the second character represented by the virtual input unit intothe text area disregarding the currently selected character currentlypresented on the text area if an operation on the virtual input unit isdetected before expiration of the operation period.
 8. The characterinput method as claimed in claim 7, further comprising: providing a timewindow for iterating character presentation associated with the firstkey in the text area according to the predetermined order of theplurality of optional characters associated with the first key torespond one or more operations on the first key during the operationperiod, wherein the iterating allows presenting of the first subsequentcharacter as the currently selected character in the text area insubstitution for the first character; extending the time window byextending the operation period of the first key in response to eachsubsequent operation based on the first key before expiration of theoperation period; and allowing the extending of the time window foriterating character presentation after displaying of the menu while theoperation of the virtual input unit for entering the second characterterminates the time window for iterating character presentation.
 9. Thecharacter input method as claimed in claim 7, wherein the menu comprisesat least one candidate of auto-completed words derived from at least onecharacter associated with the first key.
 10. The character input methodas claimed in claim 7, wherein a group of keys of the plurality of keysis associated with entirety of alphabets in a specific language, and thevirtual input unit is a second key of the touch sensitive device notbelonging to the group of keys, and the character input method furthercomprises: rendering presentation of a character in the menu which isidentical to the currently selected character in the text areadistinctive in character presentation style from other characters in themenu.
 11. The character input method as claimed in claim 7, furthercomprising: selecting the first subsequent character in the menu otherthan the first character as the currently selected character accordingto a first route of character presentation to traverse the plurality ofoptional characters in response to a first touch track on the touchsensitive device; and selecting another second subsequent character inthe menu other than the first character as the currently selectedcharacter according to a second route of character presentation totraverse the plurality of optional characters in response to a secondtouch track on the touch sensitive device.
 12. The character inputmethod as claimed in claim 11, wherein the first touch track and thesecond touch track respectively comprise touch movements in differentdirections.
 13. The character input method as claimed in claim 12,further comprising: maintaining presentation of the menu to show visualrelationship correlating a direction of sequential selection of at leasttwo characters in the menu in turn as the currently selected characterwith a direction of one of the first touch track and the second touchtrack.
 14. The character input method as claimed in claim 13, whereinthe first touch track and the second touch track respectively compriseclockwise and counterclockwise touch movements on the touch sensitivedevice, the menu comprises a prior character and a post characterposterior to the prior character in a second arrangement, and thecharacter input method further comprises: selecting, during presentationof the prior character as the currently selected character, the postcharacter as the currently selected character in substitution for theprior character in response to the first touch track, wherein theselecting of the post character as the currently selected character bythe first touch track is performed even if the first touch trackdetectable by the touch detection function is separated from an arearepresenting the post character in a first graphical user interfacecomponent; and selecting, during presentation of the post character asthe currently selected character, the prior character as the currentlyselected character in substitution for the post character in response tothe second touch track, wherein the selecting of the prior character asthe currently selected character by the second touch track is performedeven if the second touch track detectable by the touch detectionfunction is separated from an area representing the prior character inthe first graphical user interface component.
 15. The character inputmethod as claimed in claim 7, wherein the plurality of optionalcharacters associated with the first key are arranged clockwise orcounterclockwise in the menu according to the predetermined arrangement.16. A character input method executable by an electronic deviceconnectable to a display and capable of detecting touch operations,comprising: displaying a virtual keyboard comprising a plurality of keysthrough a display function; utilizing a touch detection function todetect one or more touch operations based on the virtual keyboard,wherein each key of the plurality of keys is operable as a toggle key,two different keys in the plurality of keys are respectively associatedwith different groups of character candidates, a group of charactercandidates comprises optional characters arranged in a specificarrangement for character input to a text area, and the plurality ofkeys comprise a first key; detecting if a first operation on the firstkey of the plurality of keys conforms to a first input pattern or asecond input pattern; displaying optional characters belonging to adefault character set of character candidates associated with the firstkey on a gesture operable graphical user interface, wherein at leastsome of the displayed optional characters associated with the first keyare positioned to surround a center of the gesture operable graphicaluser interface; if the first operation conforms to the first inputpattern, presenting a first character in the default character set as acurrently selected character for character input to the text area inresponse to the first operation conforming to the first input pattern;if the first operation conforms to the second input pattern, allowingpresentation of an alternative character in the default character set asthe currently selected character in substitution for the first characterduring character presentation associated with the first key in responseto the first operation conforming to the second input pattern;displaying a focus operable to indicate the currently selected characteramong the default character set; allowing movement of the focus amongthe default character set from a prior character to a post character inthe default character set in response to a first touch movement trackbased on the first key detectable by the touch detection function in adomain with an area greater than an area of the gesture operablegraphical user interface, wherein a direction of the movement of thefocus is correlated with a direction of the first touch movement trackeven if a position representing the focus in the gesture operablegraphical user interface is separated from the first touch movementtrack; and inputting the currently selected character to the text areaupon the end of character presentation associated with the first key.17. The character input method as claimed in claim 16, wherein the firstinput pattern represents a touch operation of a press on a touchsensitive device, and the second input pattern represents a touchoperation of a gesture moving along the touch sensitive device.
 18. Thecharacter input method as claimed in claim 16, further comprising:allowing circular movement of the focus among the default character setfrom the prior character to the post character in the default characterset in response to a circular touch movement track based on the firstkey detectable by the touch detection function in a domain with an areagreater than an area of the gesture operable graphical user interface,wherein a direction of the movement of the focus is correlated with adirection of the circular touch movement track even if a positionrepresenting the focus in the gesture operable graphical user interfaceis separated from the circular touch movement track.
 19. The characterinput method as claimed in claim 16, further comprising: determining anauto-completed word based on the character candidates associated thefirst key in response to the first operation based on the first key; anddisplaying a gesture operable option of the auto-completed word amongthe gesture operable graphical user interface.
 20. An electronic device,comprising: a touch sensitive device operable to detect one or moretouch operations based on one or more keys of a virtual keyboarddisplayable by a display function of the electronic device; and aprocessor electronically connected to the touch sensitive device andoperable to present character information through the display function,and operable to detect operation of the touch sensitive device accordingto a character input method, the character input method comprising:displaying the virtual keyboard comprising a plurality of keys andutilizing the virtual keyboard as a base for one or more touchoperations detectable by a touch detection function, wherein each key ofthe plurality of keys is operable as a toggle key, two different keys inthe plurality of keys are respectively associated with differentsequences of character candidates, and a sequence of charactercandidates comprises optional characters arranged in a specificarrangement for character input to a text area; detecting if a firstoperation on a first key of the plurality of keys conforms to a firstinput pattern or a second input pattern; displaying optional charactersbelonging to a default character set of character candidates associatedwith the first key on a gesture operable graphical user interface,wherein at least some of the displayed optional characters associatedwith the first key are positioned to surround a center of the gestureoperable graphical user interface; if the first operation conforms tothe first input pattern, presenting a first character in the defaultcharacter set as a currently selected character for character input tothe text area in response to the first operation conforming to the firstinput pattern; if the first operation conforms to the second inputpattern, allowing presentation of an alternative character in thedefault character set as the currently selected character insubstitution for the first character during character presentationassociated with the first key in response to the first operationconforming to the second input pattern; displaying a focus operable toindicate the currently selected character among the default characterset; allowing movement of the focus among the default character set froma prior character to a post character in the default character set inresponse to a first touch movement track based on the first keydetectable by the touch detection function in a domain with an areagreater than an area of the gesture operable graphical user interface,wherein a direction of the movement of the focus is correlated with adirection of the first touch movement track even if a positionrepresenting the focus in the gesture operable graphical user interfaceis separated from the first touch movement track; and inputting thecurrently selected character to the text area upon the end of characterpresentation associated with the first key.